home *** CD-ROM | disk | FTP | other *** search
/ Java Primer Plus / Java Primer Plus (Waite Group Proess)(1996).iso / java_Win / demo / GraphicsTest / ArcDegreePanel.class (.txt) < prev    next >
Encoding:
Java Class File  |  1995-12-04  |  1.5 KB  |  56 lines

  1. import java.awt.Color;
  2. import java.awt.Component;
  3. import java.awt.Graphics;
  4. import java.awt.Panel;
  5. import java.awt.Rectangle;
  6.  
  7. class ArcDegreePanel extends Panel {
  8.    boolean filled;
  9.  
  10.    public ArcDegreePanel(boolean var1) {
  11.       this.filled = var1;
  12.    }
  13.  
  14.    void arcSteps(Graphics var1, int var2, int var3, int var4, int var5, int var6, Color var7, Color var8) {
  15.       int var9 = 0;
  16.       int var10 = var2;
  17.       int var11 = 0;
  18.       var1.setColor(var7);
  19.  
  20.       while(var9 + var10 <= 360) {
  21.          if (var1.getColor() == var7) {
  22.             var1.setColor(var8);
  23.          } else {
  24.             var1.setColor(var7);
  25.          }
  26.  
  27.          if (this.filled) {
  28.             var1.fillArc(var3, var4, var5, var6, var9, var10);
  29.          } else {
  30.             var1.drawArc(var3, var4, var5, var6, var9, var10);
  31.          }
  32.  
  33.          var11 = var9 + var10;
  34.          var9 += var10;
  35.          ++var10;
  36.       }
  37.  
  38.       if (var11 != 360) {
  39.          if (this.filled) {
  40.             var1.fillArc(var3, var4, var5, var6, var9, 360 - var11);
  41.             return;
  42.          }
  43.  
  44.          var1.drawArc(var3, var4, var5, var6, var9, 360 - var11);
  45.       }
  46.  
  47.    }
  48.  
  49.    public void paint(Graphics var1) {
  50.       Rectangle var2 = ((Component)this).bounds();
  51.       this.arcSteps(var1, 3, 0, 0, var2.width, var2.height, Color.orange, Color.blue);
  52.       this.arcSteps(var1, 2, var2.width / 4, var2.height / 4, var2.width / 2, var2.height / 2, Color.yellow, Color.green);
  53.       this.arcSteps(var1, 1, var2.width * 3 / 8, var2.height * 3 / 8, var2.width / 4, var2.height / 4, Color.magenta, Color.white);
  54.    }
  55. }
  56.